// store/utils.ts 或 utils/storage.ts

// 通用键名
const INFO_KEY = 'shopping_info';
const HISTORY_KEY = 'history_list';

/**
 * 获取个人信息
 */
export const getInfo = () => {
  try {
    const result = uni.getStorageSync(INFO_KEY);
    return result ? JSON.parse(result) : { token: '', userId: '' };
  } catch (e) {
    console.error('读取用户信息失败', e);
    return { token: '', userId: '' };
  }
};

/**
 * 设置个人信息
 * @param obj 用户信息对象
 */
export const setInfo = (obj: { token: string; userId: string }) => {
  try {
    uni.setStorageSync(INFO_KEY, JSON.stringify(obj));
  } catch (e) {
    console.error('保存用户信息失败', e);
  }
};

/**
 * 移除个人信息
 */
export const removeInfo = () => {
  try {
    uni.removeStorageSync(INFO_KEY);
  } catch (e) {
    console.error('移除用户信息失败', e);
  }
};

/**
 * 获取历史搜索记录
 */
export const getHistoryList = () => {
  try {
    const result = uni.getStorageSync(HISTORY_KEY);
    return result ? JSON.parse(result) : [];
  } catch (e) {
    console.error('读取历史记录失败', e);
    return [];
  }
};

/**
 * 设置历史搜索记录
 * @param arr 历史记录数组
 */
export const setHistoryList = (arr: string[]) => {
  try {
    uni.setStorageSync(HISTORY_KEY, JSON.stringify(arr));
  } catch (e) {
    console.error('保存历史记录失败', e);
  }
};